@use "sass:map";

$font-family: 'Euclid Circular B', Roboto, Helvetica, Arial, sans-serif;

$typography-variants: (
  'h1': 2.5rem,
  'h2': 2rem,
  'h3': 1.5rem,
  'h4': 1.125rem,
  'h5': 1rem,
  'h6': 0.875rem,
  'paragraph': 1rem,
  'h7': 0.75rem,
  'h8': 0.625rem,
  'h9': 0.5rem,
);

$font-size-h1: map-get($typography-variants, 'h1');
$font-size-h2: map-get($typography-variants, 'h2');
$font-size-h3: map-get($typography-variants, 'h3');
$font-size-h4: map-get($typography-variants, 'h4');
$font-size-h5: map-get($typography-variants, 'h5');
$font-size-h6: map-get($typography-variants, 'h6');
$font-size-paragraph: map-get($typography-variants, 'paragraph');
$font-size-h7: map-get($typography-variants, 'h7');
$font-size-h8: map-get($typography-variants, 'h8');
$font-size-h9: map-get($typography-variants, 'h9');

@mixin typography($variant) {
  font-size: map-get($typography-variants, $variant);
  font-family: $font-family;
  line-height: 140%;
  font-style: normal;
  font-weight: normal;
}

/**
* @deprecated The typography mixins `@include design-system.H1` - `@include design-system.H9` have been deprecated in favor of the `<Text>` component from the component-library.
* Please update your code to use the `<Text>` component instead, which can be found in ui/components/component-library/text/text.tsx.
* You can find documentation for the new `<Text>` component in the MetaMask Storybook:
* {@link https://metamask.github.io/metamask-storybook/?path=/docs/components-componentlibrary-text--docs}
* If you would like to help with the replacement of the old mixins `@include design-system.H1` - `@include design-system.H9`, please submit a pull request against this GitHub issue:
* {@link https://github.com/MetaMask/metamask-extension/issues/19533}
*/

// Typography
@mixin H1 {
  @include typography('h1');
}

@mixin H2 {
  @include typography('h2');
}

@mixin H3 {
  @include typography('h3');
}

@mixin H4 {
  @include typography('h4');
}

@mixin H5 {
  @include typography('h5');
}

@mixin H6 {
  @include typography('h6');
}

@mixin Paragraph {
  @include typography('paragraph');
}

@mixin H7 {
  @include typography('h7');
}

@mixin H8 {
  @include typography('h8');
}

@mixin H9 {
  @include typography('h9');
}
